В этой статье мы рассмотрим шесть полезных операторов объединения в Combine. Мы сделаем это на примерах, экспериментируя с каждым из них в Xcode Playground.
Исходный код доступен в конце статьи.
Ну что ж, без лишних разглагольствований, давайте приступим.
1. prepend
Эта группа операторов позволяет нам добавлять (prepend — дословно “добавить в начало”) к нашему исходному паблишеру события, значения или других паблишеров:
import Foundation import Combine var subscriptions = Set<AnyCancellable>() func prependOutputExample() { let stringPublisher = ["World!"].publisher stringPublisher .prepend("Hello") .sink(receiveValue: { print($0) }) .store(in: &subscriptions) }
Результат: Hello
и World
! выводятся в последовательном порядке:
Теперь давайте добавим другого издателя того же типа:
func prependPublisherExample() { let subject